package com.yc.demo.d0316;

import com.google.gson.Gson;
import com.yc.demo.bean.Result;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.annotation.*;
import java.io.IOException;
import java.util.UUID;

@WebServlet(name = "uploadImageServlet", value = "/uploadImageServlet.s")
@MultipartConfig
public class uploadImageServlet extends HttpServlet {

    public static  final String IMAGE_PATH = "D:\\IDEA-2021.1.3\\Project\\resuorse\\";

    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
        Result result;
        try {
            Part image = request.getPart("image");
            //提取文件后缀名
            String suffix = image.getSubmittedFileName().replaceAll(".+(\\.\\w+)", "$1");

            //生成随机文件名

            String filename = UUID.randomUUID().toString();

            filename.replaceAll("-","");
            filename+=suffix;

            //保存文件

            image.write(IMAGE_PATH+filename);
            //构建文件上传的web路径
            String webpath = "/upload/"+filename;
            result = new Result(1,"文件上传成功",webpath);
        }catch (Exception e){
            e.printStackTrace();
            result = new Result(0,"文件上传失败",null);
        }

        String json = new Gson().toJson(result);
        response.getWriter().append(json);
    }
}
